2
แล็บ 3: AI เล่นโกะมกุ (Connect 5)
PolyU COMP55112026-01-26

ความรู้พื้นฐาน Python: กระดานเกม

ก่อนที่เราจะสร้าง AI ได้ เราจำเป็นต้องมีการแสดงโลกในรูปแบบดิจิทัล ในเกมโกะมกุ โลกของเราคือตารางขนาด 15x15 หรือ 19x19 ใน Python วิธีมาตรฐานในการแทนตารางคือ รายการซ้อนรายการ.

แนวคิด: สเปรดชีตในหน่วยความจำ

ให้คิดว่ารายการด้านนอกเป็น "สเปรดชีต" ที่บรรจุทุกแถวไว้ข้างใน แต่ละสมาชิกภายในคือรายการอีกชุดหนึ่งที่แทนคอลัมน์ของแถวนั้น ๆ

การเข้าถึงข้อมูล

  • board[0] คืนค่าแถวบนสุดทั้งหมด (เป็นรายการ)
  • board[1][2] เข้าถึง แถวที่ 1, คอลัมน์ที่ 2.

⚠️ ข้อผิดพลาดพิกัดที่พบบ่อย

ในคณิตศาสตร์ เรากล่าวว่า $(x, y)$ โดย $x$ คือแนวนอนและ $y$ คือแนวตั้ง ในเมทริกซ์ของ Python เราจะเข้าถึงด้วย board[row][col].

เนื่องจาก "Row" (แถว) ตรงกับตำแหน่งแนวตั้ง ($y$) และ "Col" (คอลัมน์) ตรงกับแนวนอน ($x$) โค้ดจึงมีค่าเท่ากับ board[y][x]. อย่าผสมสลับกันเด็ดขาด ไม่งั้น AI ของคุณจะมองกระดานเฉียง ๆ เอา!